// copyright(C)2010 SHIN-ICHI
﻿// NameSpace blueliger
var blueliger;
if (blueliger == undefined) blueliger = {};
﻿/// <reference path="blueliger.js" />

// Public Interface IActor
blueliger.IActor = function(name) {};
blueliger.IActor.prototype =
{
    Name: ""
    , Data: undefined
    , View: undefined
    , Visible : false
    , Shown: undefined
    , Show: function(data) {
        /// <summary>新しいデータを指定して、インスタンスの内容を表示します。</summary>
        /// <param name="data">表示するデータを指定してください。</param>
    }
    , Hidden: undefined
    , Hide: function() {
        /// <summary>データを削除して、インスタンスの内容を非表示にします。</summary>
    }
}; // End Interface
﻿/// <reference path="blueliger.js" />

// Public Interface IViewPart
blueliger.IViewPart = function( actor ){ };
blueliger.IViewPart.prototype={
    Actor: undefined
    , Show:function(data){
        /// <summary>データを指定して、データの内容を表示します。このメソッドはフレームワークのインフラストラクチャをサポートします。独自のコードから実行しないでください。</summary>
        /// <param name="data">表示するデータを指定してください。</param>
    }
    , Hide:function(){
        /// <summary>データの内容を非表示にします。このメソッドはフレームワークのインフラストラクチャをサポートします。独自のコードから実行しないでください。</summary>
    } 
}; // End Interface﻿/// <reference path="blueliger.js" />
/// <reference path="IViewPart.js" />

// Public Class Actor
blueliger.Actor = function(name) {
    /// <summary>blueliger.Actor の新しいインスタンスを初期化します。</summary>
    /// <param name="name">インスタンスの名称を指定してください。</param>
    return this.Initialize(name);
};
blueliger.Actor.prototype =
{
    Name: ""
    , Data: undefined
    , View: new blueliger.IViewPart()
    , Visible : false
    , Initialize: function(name) {
        if (name == undefined || name == "") throw new Error("引数 name が指定されていません。");
        this.Name = name;
        return this;
    }
    , Shown: undefined
    , Show: function(data) {
        /// <summary>新しいデータを指定して、インスタンスの内容を表示します。</summary>
        /// <param name="data">表示するデータを指定してください。</param>
        this.Visible = true;
        this.Data = data;
        if (this.View != undefined && this.View.Show != undefined) this.View.Show(this.Data);
        if (this.Shown != undefined) this.Shown();
    }
    , Hidden: undefined
    , Hide: function() {
        /// <summary>データを削除して、インスタンスの内容を非表示にします。</summary>
        this.Visible = false;
        this.Data = undefined;
        if (this.View != undefined && this.View.Hide != undefined) this.View.Hide();
        if( this.Hidden != undefined ) this.Hidden();
    }
}; // End Class
﻿/// <reference path="blueliger.js" />

// Public Interface IStartActor
blueliger.IStartActor = function(name) {};
blueliger.IStartActor.prototype =
{
    Name: ""
    , Data: undefined
    , View: undefined
    , Visible : false
    , Shown: undefined
    , Show: function(data) {
        /// <summary>新しいデータを指定して、インスタンスの内容を表示します。</summary>
        /// <param name="data">表示するデータを指定してください。</param>
    }
    , Hidden: undefined
    , Hide: function() {
        /// <summary>データを削除して、インスタンスの内容を非表示にします。</summary>
    }
    , Started :undefined
    , Start:function(){
        /// <summary>処理を開始します。</summary>
    }
}; // End Interface
﻿/// <reference path="blueliger.js" />

// Public Interface IStartViewPart  Inherits IViewPart
blueliger.IStartViewPart = function( actor ){ };
blueliger.IStartViewPart.prototype={
    Actor: undefined
    , Show:function(data){
        /// <summary>データを指定して、データの内容を表示します。このメソッドはフレームワークのインフラストラクチャをサポートします。独自のコードから実行しないでください。</summary>
        /// <param name="data">表示するデータを指定してください。</param>
    }
    , Hide:function(){
        /// <summary>データの内容を非表示にします。このメソッドはフレームワークのインフラストラクチャをサポートします。独自のコードから実行しないでください。</summary>
    } 
    , Start: function(){
    }
}; // End Interface﻿/// <reference path="blueliger.js" />
/// <reference path="IStartViewPart.js" />

// Public Class StartActor
blueliger.StartActor = function(name) {
    /// <summary>blueliger.StartActor の新しいインスタンスを初期化します。</summary>
    /// <param name="name">インスタンスの名称を指定してください。</param>
    return this.Initialize(name);
};
blueliger.StartActor.prototype =
{
    Name: ""
    , Data: undefined
    , View: new blueliger.IStartViewPart()
    , Visible : false
    , Initialize: function(name) {
        if (name == undefined || name == "") throw new Error("引数 name が指定されていません。");
        this.Name = name;
        return this;
    }
    , Shown: undefined
    , Show: function(data) {
        /// <summary>新しいデータを指定して、インスタンスの内容を表示します。</summary>
        /// <param name="data">表示するデータを指定してください。</param>
        this.Visible = true;
        this.Data = data;
        if (this.View != undefined && this.View.Show != undefined) this.View.Show(this.Data);
        if (this.Shown != undefined) this.Shown();
    }
    , Hidden: undefined
    , Hide: function() {
        /// <summary>データを削除して、インスタンスの内容を非表示にします。</summary>
        this.Visible = false;
        this.Data = undefined;
        if (this.View != undefined && this.View.Hide != undefined) this.View.Hide();
        if( this.Hidden != undefined ) this.Hidden();
    }
    , Started :undefined
    , Start:function(){
        if (this.View != undefined && this.View.Start != undefined) this.View.Start();
        if( this.Started != undefined ) this.Started();
    }
    
}; // End Class
﻿/// <reference path="blueliger.js" />

// Public Interface ISelectActor Inherits IActor
blueliger.ISelectActor = function(name) {};
blueliger.ISelectActor.prototype =
{
    Name: ""
    , Data: undefined
    , SelectedIndex: 0
    , View: undefined
    , Visible : false
    , Shown: undefined
    , Show: function(data) {
        /// <summary>新しいデータを指定して、インスタンスの内容を表示します。</summary>
        /// <param name="data">表示するデータを指定してください。</param>
    }
    , Hidden: undefined
    , Hide: function() {
        /// <summary>データを削除して、インスタンスの内容を非表示にします。</summary>
    }
    , Selected: undefined
    , Select: function(index) {
        /// <summary>インスタンスの内容を選択します。</summary>
        /// <param name="index">選択する項目の 0 から始まるインデックス番号を指定してください。</param>
    }
    
}; // End Interface
﻿/// <reference path="blueliger.js" />

// Public Interface ISelectViewPart
blueliger.ISelectViewPart = function( actor ){ };
blueliger.ISelectViewPart.prototype={
    Actor: undefined
    , Show:function(data){
        /// <summary>データを指定して、データの内容を表示します。このメソッドはフレームワークのインフラストラクチャをサポートします。独自のコードから実行しないでください。</summary>
        /// <param name="data">表示するデータを指定してください。</param>
    }
    , Hide:function(){
        /// <summary>データの内容を非表示にします。このメソッドはフレームワークのインフラストラクチャをサポートします。独自のコードから実行しないでください。</summary>
    } 
    , Select: function(index) {
        /// <summary>データを選択します。このメソッドはフレームワークのインフラストラクチャをサポートします。独自のコードから実行しないでください。</summary>
        /// <param name="index">選択する項目の 0 から始まるインデックス番号を指定してください。</param>
    }
}; // End Interface﻿/// <reference path="blueliger.js" />
/// <reference path="ISelectViewPart.js" />

// Public Class SelectActor
blueliger.SelectActor = function(name) {
    /// <summary>blueliger.SelectActor の新しいインスタンスを初期化します。</summary>
    /// <param name="name">インスタンスの名称を指定してください。</param>
    return this.Initialize(name);
};
blueliger.SelectActor.prototype =
{
    Name: ""
    , Data: undefined
    , SelectedIndex: 0
    , View: new blueliger.ISelectViewPart()
    , Visible : false
    , Initialize: function(name) {
        if (name == undefined || name == "") throw new Error("引数 name が指定されていません。");
        this.Name = name;
        return this;
    }
    , Shown: undefined
    , Show: function(data) {
        /// <summary>新しいデータを指定して、インスタンスの内容を表示します。</summary>
        /// <param name="data">表示するデータを指定してください。</param>
        this.Visible = true;
        this.Data = data;
        if (this.View != undefined && this.View.Show != undefined) this.View.Show(this.Data);
        if (this.Shown != undefined) this.Shown();
    }
    , Hidden: undefined
    , Hide: function() {
        /// <summary>データを削除して、インスタンスの内容を非表示にします。</summary>
        this.Visible = false;
        this.Data = undefined;
        if (this.View != undefined && this.View.Hide != undefined) this.View.Hide();
        if( this.Hidden != undefined ) this.Hidden();
    }
    , Selected: undefined
    , Select: function(index) {
        /// <summary>インスタンスの内容を選択します。</summary>
        /// <param name="index">選択する項目の 0 から始まるインデックス番号を指定してください。</param>
        this.SelectedIndex = index;
        if (this.View != undefined && this.View.Select != undefined) this.View.Select(index);
        if (this.Selected != undefined) this.Selected();
    }
    
}; // End Class
